package com.ms.service.module.analysisgroup.db.model;

import java.util.Calendar;
import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import com.xpec.c4.db.model.basic.BasicModel;
import com.xpec.c4.db.util.LogDBUtils;

/**
 * C幣卡使用詳細資訊<br>
 * 這邊只記錄"使用掉"的C幣卡相關資訊
 */
@Entity
@org.hibernate.annotations.Entity(dynamicInsert = true, dynamicUpdate = true)
@Table(name = UsedCoinCardDetailLogModel.ModelName)
@org.hibernate.annotations.Table(
		appliesTo = UsedCoinCardDetailLogModel.ModelName,
		indexes = {
			@org.hibernate.annotations.Index(name = "IDX_RECORD_TIME", columnNames = { "recordTime" }),
			@org.hibernate.annotations.Index(name = "IDX_PARVALUE", columnNames = { "coinCardParValue" }),
			@org.hibernate.annotations.Index(name = "IDX_CREATE_DETAIL", columnNames = { "createWay","createGameType","createHallType" }),
		}
	)
public class UsedCoinCardDetailLogModel extends BasicModel {

	public static final String ModelName = "used_coin_card_detail_log";
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1823347873004845521L;

	public UsedCoinCardDetailLogModel(){
		this.eventID = LogDBUtils.getRandomLong();
		this.recordTime = Calendar.getInstance().getTime();
	}
	
	/**dbid*/
	private long eventID;
	
	/**紀錄時間*/
	private Date recordTime;
	
	/**面額*/
	private int coinCardParValue;
	
	/**來源方式*/
	private String createWay;
	
	/**來源遊戲類型*/
	private String createGameType;
	
	/**來源遊戲館別*/
	private String createHallType;
	
	/**數量*/
	private int count;

	@Id
	public long getEventID() {
		return eventID;
	}

	public void setEventID(long eventID) {
		this.eventID = eventID;
	}

	public Date getRecordTime() {
		return recordTime;
	}

	public void setRecordTime(Date recordTime) {
		this.recordTime = recordTime;
	}

	public int getCoinCardParValue() {
		return coinCardParValue;
	}

	public void setCoinCardParValue(int coinCardParValue) {
		this.coinCardParValue = coinCardParValue;
	}

	public String getCreateWay() {
		return createWay;
	}

	public void setCreateWay(String createWay) {
		this.createWay = createWay;
	}

	public String getCreateGameType() {
		return createGameType;
	}

	public void setCreateGameType(String createGameType) {
		this.createGameType = createGameType;
	}

	public String getCreateHallType() {
		return createHallType;
	}

	public void setCreateHallType(String createHallType) {
		this.createHallType = createHallType;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}
	
}
